package com.itheima.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/*
 * 自定义注解
 * <p>
 * 元注解:用于定义注解的注解
 * @Target规定注解的定义位置
 * @Retention规定注解的存活周期(类似于pom.xml中依赖jar包的作用范围)
 * retention n.保持,保留
 */
@Target({ElementType.TYPE/*可以放在类前面*/, ElementType.METHOD/*可以放在方法前面*/, ElementType.PARAMETER/*可以放在形参前面*/})
@Retention(RetentionPolicy.RUNTIME/*表示被修饰的注解可以存活到运行时*/)
public @interface MyTest {//本质是定义了一个继承自Annotation接口的接口

    //定义注解的属性(用成员方法充当成员变量)
    String aaa();

    boolean bbb() default true;//default true 表示默认值为true,使用时可以不赋值

    String[] ccc();
}
